#define _CRT_SECURE_NO_WARNINGS

//class Solution {
//public:
//    void moveZeroes(vector<int>& nums) {
//        int right = 0;
//        int left = 0;
//        while (right < nums.size())
//        {
//            if (nums[right])
//            {
//                swap(nums[left], nums[right]);
//                ++left;
//            }
//            ++right;
//        }
//    }
//};

//class Solution {
//public:
//    void duplicateZeros(vector<int>& arr) {
//        int dest = 0;
//        int cur = 0;
//        while (cur < arr.size())
//        {
//            if (arr[cur] == 0 && cur < arr.size() - 1)
//            {
//                for (int i = arr.size() - 1; i > cur + 1; --i)
//                {
//                    arr[i] = arr[i - 1];
//                }
//                arr[++cur] = 0;
//            }
//            ++cur;
//        }
//    }
//};